﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Clases.Clases;
using AccesoBD;
using Clases.Estructuras;
using System.Data.Sql;
using System.Data;
using System.Data.SqlClient;

namespace Clases.ClasesPersistentes
{
    class DaoAcciones
    {

        public void registrarAccion(Acciones pAcciones)
        {
            List<Parametros> parametros = new List<Parametros>();

            Parametros tmp01 = new Parametros("idAccion", pAcciones.idAccion);
            Parametros tmp02 = new Parametros("acciones", pAcciones.acciones);
            Parametros tmp03 = new Parametros("idUsuario", pAcciones.idUsuario);

            string cmdText = "INSERT INTO tacciones (id_accion, acciones, id_usuario) VALUES (@idAccion, @acciones, @idUsuario)";

            parametros.Add(tmp01);
            parametros.Add(tmp02);
            parametros.Add(tmp02);

            AccesoBD.DBAccess acceso = new DBAccess();

            acceso.ejecutarSQL(cmdText, parametros);
        }

        public List<StrAcciones> listarAcciones()
        {
            StrAcciones tmpAcciones = new StrAcciones();
            List<StrAcciones> listaAcciones = new List<StrAcciones>();

            try
            {
                String cmdText;
                cmdText = "SPListarAcciones";
                AccesoBD.DBAccess acceso = new DBAccess();
               // DaoObject.crearConexion();
                SqlDataReader reader = acceso.ejecutarStoredProcedure(cmdText);

                while (reader.Read())
                {
                    tmpAcciones.id_Accion = reader.GetValue(0).ToString();
                    tmpAcciones.acciones = reader.GetValue(1).ToString();
                    tmpAcciones.id_Usuario = reader.GetValue(2).ToString();
                    listaAcciones.Add(tmpAcciones);
                }

                reader.Close();
               // acceso.CloseConnection();
            }
            catch (SqlException e)
            {
                throw e;
            }

            return listaAcciones;
        }
    }
}
